package com.zheng.business.dao.model;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

public class BusinessOrderUmbrellaDeposit implements Serializable {
    /**
     * 编号
     *
     * @mbg.generated
     */
    private Integer id;

    /**
     * 订单号
     *
     * @mbg.generated
     */
    private String orderno;

    /**
     * 支付订单号
     *
     * @mbg.generated
     */
    private String payorderid;

    /**
     * 渠道订单号
     *
     * @mbg.generated
     */
    private String channelorderno;

    /**
     * 渠道商户ID
     *
     * @mbg.generated
     */
    private String channelmchid;

    /**
     * 商户ID
     *
     * @mbg.generated
     */
    private String mchid;

    /**
     * 商户订单号
     *
     * @mbg.generated
     */
    private String mchorderno;

    /**
     * 渠道ID
     *
     * @mbg.generated
     */
    private String channelid;

    /**
     * 预付金规则
     *
     * @mbg.generated
     */
    private Integer ruleid;

    /**
     * 隶属代理
     *
     * @mbg.generated
     */
    private Integer agentid;

    /**
     * 昵称
     *
     * @mbg.generated
     */
    private String nickname;

    /**
     * 用户id
     *
     * @mbg.generated
     */
    private Integer userid;

    /**
     * 支付类型
     *
     * @mbg.generated
     */
    private Integer paytype;

    /**
     * 创建时间
     *
     * @mbg.generated
     */
    private Date createtime;

    /**
     * 订单失效时间
     *
     * @mbg.generated
     */
    private Date expiretime;

    /**
     * 支付时间
     *
     * @mbg.generated
     */
    private Date paysucctime;

    /**
     * 更新时间
     *
     * @mbg.generated
     */
    private Date updatetime;

    /**
     * 支付状态,0-订单生成,1-支付中(目前未使用),2-支付成功,3-业务处理完成,4-支付失败
     *
     * @mbg.generated
     */
    private Integer status;

    /**
     * 实付金额
     *
     * @mbg.generated
     */
    private BigDecimal payamount;

    /**
     * 折扣金额
     *
     * @mbg.generated
     */
    private BigDecimal discountedamount;

    /**
     * 备注描述
     *
     * @mbg.generated
     */
    private String description;

    /**
     * 退款订单号
     *
     * @mbg.generated
     */
    private String refundorderid;

    /**
     * 退款金额
     *
     * @mbg.generated
     */
    private BigDecimal refundamount;

    /**
     * 退款时间
     *
     * @mbg.generated
     */
    private Date refundtime;

    /**
     * 退款场景
     *
     * @mbg.generated
     */
    private String refunddescription;

    /**
     * 退款状态:0-订单生成,1-退款中,2-退款成功,3-退款失败,4-业务处理完成
     *
     * @mbg.generated
     */
    private Integer refundstatus;

    /**
     * 微信统一下单prepayid
     *
     * @mbg.generated
     */
    private String prepayid;

    /**
     * 退款结果:0-不确认结果,1-等待手动处理,2-确认成功,3-确认失败
     *
     * @mbg.generated
     */
    private Integer result;

    private static final long serialVersionUID = 1L;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getOrderno() {
        return orderno;
    }

    public void setOrderno(String orderno) {
        this.orderno = orderno;
    }

    public String getPayorderid() {
        return payorderid;
    }

    public void setPayorderid(String payorderid) {
        this.payorderid = payorderid;
    }

    public String getChannelorderno() {
        return channelorderno;
    }

    public void setChannelorderno(String channelorderno) {
        this.channelorderno = channelorderno;
    }

    public String getChannelmchid() {
        return channelmchid;
    }

    public void setChannelmchid(String channelmchid) {
        this.channelmchid = channelmchid;
    }

    public String getMchid() {
        return mchid;
    }

    public void setMchid(String mchid) {
        this.mchid = mchid;
    }

    public String getMchorderno() {
        return mchorderno;
    }

    public void setMchorderno(String mchorderno) {
        this.mchorderno = mchorderno;
    }

    public String getChannelid() {
        return channelid;
    }

    public void setChannelid(String channelid) {
        this.channelid = channelid;
    }

    public Integer getRuleid() {
        return ruleid;
    }

    public void setRuleid(Integer ruleid) {
        this.ruleid = ruleid;
    }

    public Integer getAgentid() {
        return agentid;
    }

    public void setAgentid(Integer agentid) {
        this.agentid = agentid;
    }

    public String getNickname() {
        return nickname;
    }

    public void setNickname(String nickname) {
        this.nickname = nickname;
    }

    public Integer getUserid() {
        return userid;
    }

    public void setUserid(Integer userid) {
        this.userid = userid;
    }

    public Integer getPaytype() {
        return paytype;
    }

    public void setPaytype(Integer paytype) {
        this.paytype = paytype;
    }

    public Date getCreatetime() {
        return createtime;
    }

    public void setCreatetime(Date createtime) {
        this.createtime = createtime;
    }

    public Date getExpiretime() {
        return expiretime;
    }

    public void setExpiretime(Date expiretime) {
        this.expiretime = expiretime;
    }

    public Date getPaysucctime() {
        return paysucctime;
    }

    public void setPaysucctime(Date paysucctime) {
        this.paysucctime = paysucctime;
    }

    public Date getUpdatetime() {
        return updatetime;
    }

    public void setUpdatetime(Date updatetime) {
        this.updatetime = updatetime;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public BigDecimal getPayamount() {
        return payamount;
    }

    public void setPayamount(BigDecimal payamount) {
        this.payamount = payamount;
    }

    public BigDecimal getDiscountedamount() {
        return discountedamount;
    }

    public void setDiscountedamount(BigDecimal discountedamount) {
        this.discountedamount = discountedamount;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getRefundorderid() {
        return refundorderid;
    }

    public void setRefundorderid(String refundorderid) {
        this.refundorderid = refundorderid;
    }

    public BigDecimal getRefundamount() {
        return refundamount;
    }

    public void setRefundamount(BigDecimal refundamount) {
        this.refundamount = refundamount;
    }

    public Date getRefundtime() {
        return refundtime;
    }

    public void setRefundtime(Date refundtime) {
        this.refundtime = refundtime;
    }

    public String getRefunddescription() {
        return refunddescription;
    }

    public void setRefunddescription(String refunddescription) {
        this.refunddescription = refunddescription;
    }

    public Integer getRefundstatus() {
        return refundstatus;
    }

    public void setRefundstatus(Integer refundstatus) {
        this.refundstatus = refundstatus;
    }

    public String getPrepayid() {
        return prepayid;
    }

    public void setPrepayid(String prepayid) {
        this.prepayid = prepayid;
    }

    public Integer getResult() {
        return result;
    }

    public void setResult(Integer result) {
        this.result = result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", orderno=").append(orderno);
        sb.append(", payorderid=").append(payorderid);
        sb.append(", channelorderno=").append(channelorderno);
        sb.append(", channelmchid=").append(channelmchid);
        sb.append(", mchid=").append(mchid);
        sb.append(", mchorderno=").append(mchorderno);
        sb.append(", channelid=").append(channelid);
        sb.append(", ruleid=").append(ruleid);
        sb.append(", agentid=").append(agentid);
        sb.append(", nickname=").append(nickname);
        sb.append(", userid=").append(userid);
        sb.append(", paytype=").append(paytype);
        sb.append(", createtime=").append(createtime);
        sb.append(", expiretime=").append(expiretime);
        sb.append(", paysucctime=").append(paysucctime);
        sb.append(", updatetime=").append(updatetime);
        sb.append(", status=").append(status);
        sb.append(", payamount=").append(payamount);
        sb.append(", discountedamount=").append(discountedamount);
        sb.append(", description=").append(description);
        sb.append(", refundorderid=").append(refundorderid);
        sb.append(", refundamount=").append(refundamount);
        sb.append(", refundtime=").append(refundtime);
        sb.append(", refunddescription=").append(refunddescription);
        sb.append(", refundstatus=").append(refundstatus);
        sb.append(", prepayid=").append(prepayid);
        sb.append(", result=").append(result);
        sb.append("]");
        return sb.toString();
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        BusinessOrderUmbrellaDeposit other = (BusinessOrderUmbrellaDeposit) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getOrderno() == null ? other.getOrderno() == null : this.getOrderno().equals(other.getOrderno()))
            && (this.getPayorderid() == null ? other.getPayorderid() == null : this.getPayorderid().equals(other.getPayorderid()))
            && (this.getChannelorderno() == null ? other.getChannelorderno() == null : this.getChannelorderno().equals(other.getChannelorderno()))
            && (this.getChannelmchid() == null ? other.getChannelmchid() == null : this.getChannelmchid().equals(other.getChannelmchid()))
            && (this.getMchid() == null ? other.getMchid() == null : this.getMchid().equals(other.getMchid()))
            && (this.getMchorderno() == null ? other.getMchorderno() == null : this.getMchorderno().equals(other.getMchorderno()))
            && (this.getChannelid() == null ? other.getChannelid() == null : this.getChannelid().equals(other.getChannelid()))
            && (this.getRuleid() == null ? other.getRuleid() == null : this.getRuleid().equals(other.getRuleid()))
            && (this.getAgentid() == null ? other.getAgentid() == null : this.getAgentid().equals(other.getAgentid()))
            && (this.getNickname() == null ? other.getNickname() == null : this.getNickname().equals(other.getNickname()))
            && (this.getUserid() == null ? other.getUserid() == null : this.getUserid().equals(other.getUserid()))
            && (this.getPaytype() == null ? other.getPaytype() == null : this.getPaytype().equals(other.getPaytype()))
            && (this.getCreatetime() == null ? other.getCreatetime() == null : this.getCreatetime().equals(other.getCreatetime()))
            && (this.getExpiretime() == null ? other.getExpiretime() == null : this.getExpiretime().equals(other.getExpiretime()))
            && (this.getPaysucctime() == null ? other.getPaysucctime() == null : this.getPaysucctime().equals(other.getPaysucctime()))
            && (this.getUpdatetime() == null ? other.getUpdatetime() == null : this.getUpdatetime().equals(other.getUpdatetime()))
            && (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus()))
            && (this.getPayamount() == null ? other.getPayamount() == null : this.getPayamount().equals(other.getPayamount()))
            && (this.getDiscountedamount() == null ? other.getDiscountedamount() == null : this.getDiscountedamount().equals(other.getDiscountedamount()))
            && (this.getDescription() == null ? other.getDescription() == null : this.getDescription().equals(other.getDescription()))
            && (this.getRefundorderid() == null ? other.getRefundorderid() == null : this.getRefundorderid().equals(other.getRefundorderid()))
            && (this.getRefundamount() == null ? other.getRefundamount() == null : this.getRefundamount().equals(other.getRefundamount()))
            && (this.getRefundtime() == null ? other.getRefundtime() == null : this.getRefundtime().equals(other.getRefundtime()))
            && (this.getRefunddescription() == null ? other.getRefunddescription() == null : this.getRefunddescription().equals(other.getRefunddescription()))
            && (this.getRefundstatus() == null ? other.getRefundstatus() == null : this.getRefundstatus().equals(other.getRefundstatus()))
            && (this.getPrepayid() == null ? other.getPrepayid() == null : this.getPrepayid().equals(other.getPrepayid()))
            && (this.getResult() == null ? other.getResult() == null : this.getResult().equals(other.getResult()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getOrderno() == null) ? 0 : getOrderno().hashCode());
        result = prime * result + ((getPayorderid() == null) ? 0 : getPayorderid().hashCode());
        result = prime * result + ((getChannelorderno() == null) ? 0 : getChannelorderno().hashCode());
        result = prime * result + ((getChannelmchid() == null) ? 0 : getChannelmchid().hashCode());
        result = prime * result + ((getMchid() == null) ? 0 : getMchid().hashCode());
        result = prime * result + ((getMchorderno() == null) ? 0 : getMchorderno().hashCode());
        result = prime * result + ((getChannelid() == null) ? 0 : getChannelid().hashCode());
        result = prime * result + ((getRuleid() == null) ? 0 : getRuleid().hashCode());
        result = prime * result + ((getAgentid() == null) ? 0 : getAgentid().hashCode());
        result = prime * result + ((getNickname() == null) ? 0 : getNickname().hashCode());
        result = prime * result + ((getUserid() == null) ? 0 : getUserid().hashCode());
        result = prime * result + ((getPaytype() == null) ? 0 : getPaytype().hashCode());
        result = prime * result + ((getCreatetime() == null) ? 0 : getCreatetime().hashCode());
        result = prime * result + ((getExpiretime() == null) ? 0 : getExpiretime().hashCode());
        result = prime * result + ((getPaysucctime() == null) ? 0 : getPaysucctime().hashCode());
        result = prime * result + ((getUpdatetime() == null) ? 0 : getUpdatetime().hashCode());
        result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode());
        result = prime * result + ((getPayamount() == null) ? 0 : getPayamount().hashCode());
        result = prime * result + ((getDiscountedamount() == null) ? 0 : getDiscountedamount().hashCode());
        result = prime * result + ((getDescription() == null) ? 0 : getDescription().hashCode());
        result = prime * result + ((getRefundorderid() == null) ? 0 : getRefundorderid().hashCode());
        result = prime * result + ((getRefundamount() == null) ? 0 : getRefundamount().hashCode());
        result = prime * result + ((getRefundtime() == null) ? 0 : getRefundtime().hashCode());
        result = prime * result + ((getRefunddescription() == null) ? 0 : getRefunddescription().hashCode());
        result = prime * result + ((getRefundstatus() == null) ? 0 : getRefundstatus().hashCode());
        result = prime * result + ((getPrepayid() == null) ? 0 : getPrepayid().hashCode());
        result = prime * result + ((getResult() == null) ? 0 : getResult().hashCode());
        return result;
    }
}